// attribute：用于传输与顶点相关的数据，都以a_开头
// uniform：传输对于所有顶点都相同的数据，都以u_开始
// 函数后面跟着一个v，表示函数也可以接收数组作为参数
// ================= 传递attribute
// 传递一个float值或向量1维
export function assignVertexAttrib1f(gl, loc, value) {
  gl.vertexAttrib1f(loc, value);
}
// 将顶点位置传输给attribute变量
export function assignVertexAttrib2f(gl, loc, v1, v2) {
  gl.vertexAttrib2f(loc, v1, v2);
}
// 将顶点位置传输给attribute变量
export function assignVertexAttrib3f(gl, loc, v1, v2, v3) {
  gl.vertexAttrib3f(loc, v1, v2, v3);
}
// 将顶点位置传输给attribute变量
export function assignVertexAttrib4f(gl, loc, v1, v2, v3, v4) {
  gl.vertexAttrib4f(loc, v1, v2, v3, v4);
}
// 将顶点位置传输给attribute变量
export function assignVertexAttrib4fv(gl, loc, vecVal) {
  if(vecVal instanceof Float32Array) ;
  gl.vertexAttrib4fv(loc, vecVal)
}


// ================= 传递uniform
// 传递一个float值
export function assignUniform1f(gl, loc, data) {
  gl.uniform1f(loc, data);
}
// 传递两个float值
export function assignUniform2f(gl, loc, data) {
  gl.uniform2fv(loc, data);
}
export function assignUniform3f(gl, loc, v1, v2, v3) {
  gl.uniform3f(loc, v1, v2, v3);
}
export function assignUniform4f(gl, loc, v1, v2, v3, v4) {
  gl.uniform4f(loc, v1, v2, v3, v4)
}
// 传递四维矩阵
export function assignUniformMatrix4fv(gl, loc, data) {
  gl.uniformMatrix4fv(loc, false, data);
}
// 传递四维向量
export function assignUniform4fv(gl, loc, data) {
  if(data instanceof Float32Array) ;
  gl.uniform4fv(loc, data);
}